[アップデート]AWS DMSのスキーマ変換機能が発表されました#reinvent
みなさんこんにちは、杉金です。
AWS DMSのスキーマ変換機能が発表されました!これまではスキーマ変換を行う際は、AWS Schema Conversion Tool (AWS SCT) を別途使用する必要がありました。このアップデートにより、マネジメントコンソール上で完結できるようになりました。
概要図
スキーマ変換機能の概要図を以下に記載します。左端にあるのが移行元となるデータベースで右端にあるのが移行先のデータベースです。中心に移行プロジェクトがあり、データプロバイダーを介してスキーマ変換を行います。
引用:https://docs.aws.amazon.com/dms/latest/userguide/CHAP_SchemaConversion.html
DMSスキーマ変換作業の流れ
DMSスキーマ変換作業は以下のステップで進めていきます。
- インスタンス プロファイルを作成する
- データプロバイダーを構成する
- 移行プロジェクトを作成する
- 評価レポートを作成する
- ソース コードを変換する
- 変換されたコードを適用する
- クリーンアップとトラブルシューティング
サポートしているリージョン
以下のリージョンをサポートしています。
Region Name | Region |
---|---|
US East (N. Virginia) | us-east-1 |
US East (Ohio) | us-east-2 |
US West (Oregon) | us-west-2 |
Asia Pacific (Tokyo) | ap-northeast-1 |
Asia Pacific (Singapore) | ap-southeast-1 |
Asia Pacific (Sydney) | ap-southeast-2 |
Europe (Frankfurt) | eu-central-1 |
Europe (Stockholm) | eu-north-1 |
Europe (Ireland) | eu-west-1 |
AWS Database Migration Service User Guide | Supported AWS Regions
サポートしているソースおよびターゲットのデータプロバイダー
ソース
- Microsoft SQL Server version 2008 R2 and higher
- Oracle version 10.2 and later, 11g and up to 12.2, 18c, and 19c
ターゲット
- MySQL version 8.x
- PostgreSQL version 14.x
AWS Database Migration Service User Guide | Supported source and target data providers
前提条件、制限事項
他にもいくつかの前提条件や制限事項がありますので、利用される際は一読ください。
前提条件
AWS Database Migration Service User Guide | Prerequisites for working with DMS Schema Conversion
制限事項
AWS Database Migration Service User Guide | Limitations
少しだけ試してみた
今回はコンソールに新たに増えた以下の3つを試してみます。
インスタンスプロファイルの作成
まずはインスタンスのプロファイル作成して、ネットワークとセキュリティの設定を行います。
最初に名前を決めます。
次にレプリケーションインスタンスを実行するネットワークとセキュリティグループを設定します。
下にある任意の設定の中身はこちらで、スキーマ変換メタデータを保存するS3バケットの指定と、その他の設定としてレプリケーションインスタンスのボリューム暗号化に使用されるKMSキーを指定します。
インスタンスプロファイルの設定は以上です。
データプロバイダーの構成
次はデータプロバイダーの構成です。移行元(ソース)と移行先(ターゲット)の2つのプロバイダーを作成します。
まずはソースのデータプロバイダーを想定して作ってみます。オンプレミスやEC2を想定して、手動で入力を選び、名前とエンジンタイプを選択します。
エンジンタイプを選択するとDBエンジンに応じた項目が表示されます。Oracleを選びましたので、ポートやサービスIDなどの必要項目を入力していきます。
以上がソースのデータプロバイダーの設定です。それほど設定項目は多くないですね。
次はターゲットのデータプロバイダーの設定です。今度はRDSを選択してみると、リストからRDSを選べます。
ソースと同じようにポートやデータベース名など必要項目を入力していきます。
入力を終えたら、データプロバイダーの作成を選択します。
これでソースとターゲットのプロバイダーが作成されました。
移行プロジェクト作成
移行プロジェクトの作成を行います。
最初に名前と作成したインスタンスプロファイルを指定します。
ソースとターゲットの設定を行います。データプロバイダーを指定し、データベースへのアクセスに使用するシークレットの指定、シークレットとKMSキーへのアクセスを行うIAMロールを指定します。
設定後に下にスクロールすると任意の追加設定があります。
ここでは変換ルールを設定できます。
移行プロジェクトの作成は以上です。今回はここまでの紹介となりますが、実際の移行はまたの機会にお見せできればと思います。
料金
スキーマ変換機能自体は無料のようです。DMSで使用したボリュームやレプリケーションインスタンスなどの使用したリソースに応じて料金が発生します。
最後に
簡単ですが、AWS DMSのスキーマ変換機能について紹介しました。AWS SCTを使ったことが無かったのですが、過去ブログの画面キャプチャを見てハードル高そうだなと思っていました。今回のアップデートによって、マネジメントコンソール上でスキーマ変換ができるのはシンプルになって嬉しいですね。
参考資料
- Announcing Schema Conversion feature in AWS DMS
- AWS Database Migration Service User Guide | Converting database schemas using DMS Schema Conversion
- AWS Database Migration Service User Guide | Getting started with DMS Schema Conversion
- AWS Database Migration Service User Guide | Prerequisites for working with DMS Schema Conversion
- AWS Database Migration Service User Guide | Limitations
- AWS Database Migration Service User Guide | Supported AWS Regions